package mamoubis.metier;

import java.util.ArrayList;
import java.util.Date;

public class Exemplaire {
	
	//VARIABLES
	
	private int idExemplaire;
	private Date dateAchat;
	private EnumStatusExemplaire status;
	private String isbn;
	private EmpruntEnCours empruntEnCours;
	private ArrayList<EmpruntArchive> empruntsArchives = new ArrayList<>();

	
	
// =========== Constructeurs ============
	
	public Exemplaire(int i, Date date, String ISBN, EnumStatusExemplaire stat) {
	
		setIdExemplaire(i);
		setDateAchat(date);
		setIsbn(ISBN.toUpperCase());
		setStatus(stat);
	}
	
	public Exemplaire(){
	}	
	
	//GET ET SET
	
	
	public int getIdExemplaire() {
		return idExemplaire;
	}


	public void setIdExemplaire(int idExemplaire) {
		this.idExemplaire = idExemplaire;
	}


	public Date getDateAchat() {
		return dateAchat;
	}


	public void setDateAchat(Date dateAchat) {
		this.dateAchat = dateAchat;
	}


	public EnumStatusExemplaire getStatus() {
		return status;
	}


	public void setStatus(EnumStatusExemplaire status) {
		this.status = status;
	}


	public String getIsbn() {
		return isbn;
	}


	public void setIsbn(String isbn) {
		this.isbn = isbn;
	}
	

	public EmpruntEnCours getEmpruntEnCours() {
		return empruntEnCours;
	}

	public void setEmpruntEnCours(EmpruntEnCours empruntEnCours) {
		this.empruntEnCours = empruntEnCours;
	}
	
// ======= Methodes ==============

	
	
public ArrayList<EmpruntArchive> getEmpruntsArchives() {
		return empruntsArchives;
	}

// ======= Overriding ===========
@Override
public String toString() {
	return "idExemplaire=" + idExemplaire + ", status=" + status
			+ ", isbn=" + isbn;
}

public void archive() {
	EmpruntArchive ear = new EmpruntArchive(new Date(), empruntEnCours.getDateEmprunt(), empruntEnCours.getEmprunteur(), this);
	empruntsArchives.add(ear);
}


}
